#ifndef LAN2COMBINECAL_H
#define LAN2COMBINECAL_H

#include "lan2cal.h"
#include "lan2calcontrol.h"
#include "lan2calhead.h"
#include "lan2caltime.h"

#include <QCalendarWidget>
#include <QLineEdit>
#include <QObject>
#include <QVBoxLayout>
#include <QWidget>
/**
 * @brief The Lan2CombineCal class
 * 合并控件集
 */

#include "lan2core.h"
LAN2STA
class Lan2CalCombine : public QWidget
{
    Q_OBJECT
public:
    explicit Lan2CalCombine(int width=360,int head_height=50,int cal_height=270,int time_height=40,int control_height=40,int line_height=1,QWidget *parent = nullptr);
    QVBoxLayout* vbox=nullptr;
    Lan2CalHead* mcalhead=nullptr;
    Lan2Cal* mcal=nullptr;
    Lan2CalTime* mtimewidget=nullptr;
    Lan2CalControl* mcalcontrol=nullptr;

    //移动操作
    void method_movehhplane(int x,int y);
    void method_movemmplane(int x,int y);
    void method_movessplane(int x,int y);

    void method_delAllplane();
    void method_hideAllplane();
private:
    void method_initShadow();




signals:
    void sign_combinetoday();
    void sign_combineok(QDateTime);
    void sign_combineclear();
public slots:
    void slot_leftMM();
    void slot_leftyyyy();
    void slot_rightMM();
    void slot_rightyyyy();

    void slot_today();
    void slot_clear();
    void slot_ok();


    void slot_pagechange(int,int);


    // QWidget interface


    // QWidget interface
protected:
    void paintEvent(QPaintEvent *event);
};

LAN2END
#endif // LAN2COMBINECAL_H
